The present invention is generally related to computer systems, and, more particularly, the present invention is related to bus interface techniques that enable asynchronous enclosure services between an enclosure processor and a host bus adapter.
Known bus and protocol interface techniques of most common interfaces for relatively small computer systems, such as ATA (Advanced Technology Attachment, also known in the art as Integrated Development Environment (IDE) interface), SATA (Serial Advanced Technology Attachment), UATA (Ultra ATA), etc., have no means for supporting an enclosure processor.
More particularly, disk drive enclosure service processors are known to use various standard protocols that unfortunately fail to address the needs of inexpensive interfaces such as ATA. For example, in SCSI Accessed Fault-Tolerant Enclosures (SAF-TE), the enclosure processor is just another device attached to the SCSI bus and may use a SAF-TE protocol that synchronously polls the enclosure processor at a predefined rate, e.g., every two seconds. Performing synchronous polling in an ATA interface regardless of the condition of the devices in the enclosure could compromise the performance of the Host Bus Adapter (HBA) since such polling typically interrupts operation of the Central Processing Unit (CPU) with every character arrival or transmittal. Thus, interrupt overhead of a synchronous polling technique could detrimentally affect the performance of the HBA in the ATA interface.
In SCSI Enclosure Services (SES), an elaborate command set, mainly used in FIBRE-based interfaces, requires the enclosure processor to be coupled to one or more of the Fibre drives. The command set relies on special diagnostics commands to be sent through one or more of the drives, which in turn relay such commands to the enclosure processor. In an ATA interface it would be impractical to sacrifice one or more of the drives for providing communications with the enclosure processor. In fact, the ATA interface command protocol does not support any form of enclosure services.
In view of the foregoing discussion, it would be desirable to provide reliable and low-cost interface techniques between the enclosure processor and the HBA to carry out Enclosure Services in inexpensive and widely used interfaces for small computer systems.